package com.obrempon.credit.market.httptest.api

import com.obrempon.credit.market.configs.ObremponApiPath
import com.obrempon.credit.market.configs.ObremponApiUrl
import com.obrempon.credit.market.configs.ObremponConfigs
import com.obrempon.credit.market.utils.shared.ObremponSharedHelper
import com.obrempon.credit.market.utils.shared.ObremponSharedKey
import com.obrempon.module.easyhttp.annotation.HttpRename
import com.obrempon.module.easyhttp.config.IRequestApi
import java.util.TimeZone

/**
 * ObremponCredit
 * @Author wwdeng
 * @CreateTime: 2025/2/27 19:51
 * @Annotation：启动页接口Api
 */
object LaunchApi {

    /**
     * 时区接口
     * /v1/timezonePath
     */
    class ILaunchTimeZoneApi: IRequestApi {

        override fun getApi(): String {
            return ObremponApiUrl.OBREMPON_TIMEZONE_URL
        }

        @HttpRename("p")
        private var product = ObremponConfigs.OBREMPON_APPNAME
        @HttpRename("tz")
        private var timeZoneId = TimeZone.getDefault().id
    }

    /**
     * APP配置参数 Path
     * /v1/getAppShowInfo
     */
    class ILaunchConfigsApi: IRequestApi {
        override fun getApi(): String {
            return ObremponApiUrl.queryEasyHttpUrl()
        }

        @HttpRename("product")
        private var product = ObremponConfigs.OBREMPON_APPNAME
        @HttpRename("path")
        private var path = ObremponApiPath.OBREMPON_PATH.OBREMPON_API_APP_INFO_PATH
        @HttpRename("token")
        private var token = ObremponSharedHelper.queryObremponSharedString(ObremponSharedKey.OBREMPON_TOKEN)

        fun insertObremponConfig(pName: String,token: String): ILaunchConfigsApi{
            this.product = pName
            this.token = token
            return this
        }
    }
}